iT邦幫忙

2023 iThome 鐵人賽

DAY 7
0
自我挑戰組

c++競程30天系列 第 7

Day 09 Uva10038 - Jolly Jumpers

  • 分享至 

  • xImage
  •  

#1 Uva10038 - Jolly Jumpers

  • 題義
    *此題給妳一個n長度的數列,請你求出這個數列的每兩項差所組成的數列可不可以組成一個1-n-1的數列。
  • 解法
    1.先將數列中的每兩項差算出來。
    2.並放進vector裡面後排序。
    3.開始檢查有沒有符合題目要求。
#include <bits/stdc++.h>
using namespace std;

int main() {
    int n,x;
    while(cin>>n){
        vector <int> a,b;
        for(int i=0;i<n;i++){
            cin>>x;
            a.push_back(x);
        }
        bool ok=true;
        for(int i=0;i<a.size()-1;i++)b.push_back(abs(a[i]-a[i+1]));
        sort(b.begin(),b.end());
        for(int i=0;i<b.size();i++)if(b[i]!=i+1)ok=false;
        if(ok){
            cout<<"Jolly"<<endl;
        }else{
            cout<<"Not jolly"<<endl;
        }
    }
}```

上一篇
Day 08 Uva10035 - Primary Arithmetic
下一篇
Day 10 Uva10041 - Vito's family
系列文
c++競程30天9
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言